package com.ruoyi.pay.manager.service;

import java.util.List;

import com.param.concat.IIdParam;
import com.ruoyi.pay.manager.domain.ChangeRecord;

/**
 * 余额变更记录Service接口
 * 
 * @author 王强
 * @date 2023-12-25
 */
public interface IChangeRecordService
{
    /**
     * 查询余额变更记录
     * 
     * @param id 余额变更记录主键
     * @return 余额变更记录
     */
    public ChangeRecord selectById(Integer id);

    /**
     * 查询余额变更记录列表
     * 
     * @param changeRecord 余额变更记录
     * @return 余额变更记录集合
     */
    public List<ChangeRecord> selectList(ChangeRecord changeRecord);
    
    /**
     * 查询充值记录 列表
     * 
     * @param recharge 充值记录 
     * @return 充值记录 集合
     */
    public List<ChangeRecord> selectList(IIdParam idParam);
    
    

    /**
     * 新增余额变更记录
     * 
     * @param changeRecord 余额变更记录
     * @return 结果
     */
    public int insert(ChangeRecord changeRecord);

    
    /**
     * 新增余额变更记录
     * 
     * @param changeRecord 余额变更记录
     * @return 结果
     */
    public <P> int insertParam(P changeRecord);
    /**
     * 修改余额变更记录
     * 
     * @param changeRecord 余额变更记录
     * @return 结果
     */
    public int update(ChangeRecord changeRecord);

    /**
     * 批量删除余额变更记录
     * 
     * @param ids 需要删除的余额变更记录主键集合
     * @return 结果
     */
    public int deleteByIds(Integer[] ids);

    /**
     * 删除余额变更记录信息
     * 
     * @param id 余额变更记录主键
     * @return 结果
     */
    public int deleteById(Integer id);
}
